Motor Grader Cross Slope Control With Articulation Compensation

ABSTRACT

A motor grader is provided having cross slope cut angle control for providing accurate cuts generally, and particularly while the machine is travelling in other than a straight and level fashion. A controller is configured to adjust the cross slope angle of the blade, so that the cross slope cut angle corresponds to a desired cross slope cut angle. The controller receives a signal indicative of the desired cross slope cut angle and executing a pure pursuit procedure to identify a blade cross slope angle to yield the desired cross slope cut angle. The pure pursuit procedure includes identifying a blade travel direction, and identifying a horizontal component thereof. The blade edge is projected onto a plane perpendicular to the horizontal component of the blade travel direction, generating a slope function specifying the cross slope cut angle as a function of blade cross slope angle.

TECHNICAL FIELD OF THE DISCLOSURE

The present disclosure relates to motor grader operation and, more particularly, relates to motor grader blade control for maintaining accurate cut control during cross slope operations.

BACKGROUND OF THE DISCLOSURE

Motor graders are earth-moving machines that are employed in a variety of tasks, including as shaping tools to create banks, ditches, and berms, as surface preparation tools for scarification and other surface treatments, and as finishing tools to refine construction site surfaces and roadway surfaces to final shape and contour. Although not universally applicable, motor graders typically include a front frame and a rear frame that are joined at an articulation joint. The rear frame includes compartments for housing the power source and cooling components, the power source being operatively coupled to the rear wheels for primary propulsion of the machine. The rear wheels are typically arranged in tandem sets on opposing sides of the rear frame. The front frame typically includes a pair of front wheels, and supports an operator station and a blade assembly.

In order to create a desired shape, contour, and/or finish, the motor grader blade can generally be rotated, tilted, raised, lowered, and/or shifted side to side to any of a large number of positions with fine resolution of motion. Thus, although the blade is affixed to the motor grader, the relative blade position is highly variable.

Overall steering of the machine is generally a function of both front wheel steering (typically referred to as “steering”) and articulation of the front frame relative to the rear frame (typically referred to as “articulation”). This allows the machine to navigate relatively tight arcs and circles such as may occur at curves or turns in a roadway and to stagger the front and rear of the machine to place both sets of wheels on firm ground.

Given the variabilities in blade position, frame articulation, and wheel steering, it can be difficult for the operator to position the blade to produce a precise cut. One such circumstance is when the blade angle must be accurately controlled for cross-slope grading operations, such as when forming or finishing a berm or bank. The difficulty in maintaining an accurate blade position during such a task is increased when the motor grader frame is also articulated, for example, when the machine is crabbing or turning.

One attempted solution has been to calculate a machine direction of travel vector, to identify blade position of travel by reference to the machine direction of travel vector, and to thereby control the blade orientation in the direction of travel. For example, U.S. Pat. No. 6,112,145, entitled “Method and Apparatus for Controlling the Spatial Orientation of the Blade on an Earthmoving Machine” describes such a system. However, the system of the '145 patent is fairly complex in implementation, requiring additional machine sensors, and is thus expensive and prone to errors or failures. In addition, calculating the blade orientation in the manner set forth in the '145 patent may not accurately account for non-transverse gravitational effects such as water run-off paths.

The present disclosure is directed to a motor grader blade control system and method to improve motor grader operations in order to address one or more of the problems or shortcomings set forth above. However, it should be appreciated that the solution of any particular problem is not a limitation on the scope of this disclosure or of the attached claims except to the extent expressly noted. Additionally, this background section discusses problems and solutions noted by the inventors; the inclusion of any problem or solution in this section is not an indication that the problem or solution represents known prior art except that that the contents of the indicated patent represent a publication. With respect to the identified patent, the foregoing summary thereof is not intended to alter or supplement the prior art document itself; any discrepancy or difference should be resolved by reference to the patent document itself.

SUMMARY OF THE DISCLOSURE

In accordance with one aspect of the present disclosure, a method is provided for controlling a blade of a motor grader to provide a desired cross slope cut angle. The motor grader includes a frame having a front frame portion and a rear frame portion, and the blade has an edge and a center point, and is actuated by one or more blade slope actuators. A plurality of machine sensors are provided, and the method includes receiving a signal indicative of the desired cross slope cut angle, receiving one or more sensor signals from the plurality of sensors, and executing a pure pursuit procedure to identify a blade slope to yield the desired cross slope cut angle based on the one or more sensor signals. The pure pursuit procedure includes identifying a direction of travel of the blade based on at least one of the sensor signals, wherein the direction of travel of the blade has a horizontal component, and identifying an angle between the horizontal component and the front frame portion. A machine travel direction at the blade center point is identified, and a projection of the blade edge onto a plane perpendicular to the horizontal component of the direction of travel of the blade is generated. Based on the projection of the blade edge onto the perpendicular plane, a slope function is generated specifying the cross slope cut angle as a function of blade cross slope angle.

In accordance with another aspect of the present disclosure, a motor grader is provided having improved cross slope cut angle control. The motor grader includes a frame having a front frame portion and a rear frame portion, a blade movably attached to the front frame portion, wherein the blade has an edge and a center point, one or more blade slope actuators to adjust the cross slope angle of the blade, and a plurality of machine sensors. A controller is configured to adjust the cross slope angle of the blade, so that the cross slope cut angle corresponds to a desired cross slope cut angle, by receiving a signal indicative of the desired cross slope cut angle, receiving one or more sensor signals from the plurality of sensors, and executing a pure pursuit procedure to identify a blade cross slope angle to yield the desired cross slope cut angle based on the one or more sensor signals. The pure pursuit procedure includes identifying a direction of travel of the blade based on at least one of the sensor signals, the direction of travel of the blade having a horizontal component, and identifying an angle between the horizontal component and the front frame portion. A machine travel direction at the blade center point is generated and a projection of the blade edge onto a plane perpendicular to the horizontal component of the direction of travel of the blade is generated. Based on the projection of the blade edge onto the perpendicular plane, a slope function is generated to specify the cross slope cut angle as a function of blade cross slope angle.

In accordance with yet another aspect of the disclosure, a method is provided for controlling a blade of a motor grader to provide a desired cross slope cut angle via one or more blade slope actuators. The method includes measuring a blade cross slope angle, generating a blade travel vector representing a direction of travel of the blade, projecting the blade travel vector onto a horizontal surface to define a blade travel projection, and generating a plane perpendicular to the blade travel projection. A cutting edge of the blade is projected onto the plane perpendicular to the projection to generate a cut projection as a function of blade cross slope angle and a cross slope angle of the blade is adjusted such that an angle of the cut projection matches the desired cross slope cut angle.

Additional and alternative features and aspects of the disclosed methods and systems will become apparent from reading the detailed specification in conjunction with the included drawing figures.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a pictorial representation of a side view of an exemplary motor grader;

FIG. 2 is a pictorial representation of a top view of an exemplary motor grader;

FIG. 3 is a diagrammatic illustration of a top view of an exemplary motor grader illustrating steering and articulation angles;

FIG. 4 is a control schematic showing controller inputs and outputs used in implementing various embodiments of the disclosed systems and methods;

FIG. 5 is a vector diagram illustrating system geometric relationships in accordance with an aspect of the disclosure;

FIG. 6 is a pictorial representation of a top view of an exemplary motor grader showing angular component relationships; and

FIG. 7 is a flow chart illustrating an overview process for blade slope control to provide a desired cross slope cut angle in accordance with an aspect of the disclosure.

DETAILED DESCRIPTION OF THE DISCLOSURE

The present disclosure provides a system and method for motor grader blade control that compensates for machine pitch, roll, steering and articulation to replicate a desired cross slope cut angle in the earth being shaped. In particular, the cross slope angle of the blade is adjusted pursuant to a pure pursuit method, so that the actual cross slope cut angle corresponds to the desired cross slope cut angle. The controller receives a signal indicative of the desired cross slope cut angle and executes a pure pursuit procedure to identify the blade cross slope angle needed to yield the desired cross slope cut angle, while accounting for machine attitude and configuration. In simplified overview, the pure pursuit procedure includes identifying a blade travel direction, and identifying a horizontal component thereof. The blade edge is projected onto a plane perpendicular to the horizontal component of the blade travel direction and generating a slope function specifying the cross slope cut angle as a function of blade cross slope angle.

Referring now to FIG. 1 and FIG. 2, there is shown an exemplary motor grader in accordance with one embodiment of the present disclosure. The illustrated motor grader 10 includes a front frame 12, rear frame 14, and a work implement 16. In the context of a motor grader, the work implement 16 is typically a blade assembly 18, also sometimes referred to as a drawbar-circle-moldboard assembly (DCM). The blade assembly 18 may include a separate blade portion and a moldboard portion.

The rear frame 14 includes a power source, not shown, contained within a rear compartment 20. The power source is typically operatively coupled through a transmission, not shown, to rear traction devices or wheels 22 for primary machine propulsion. As shown, the rear wheels 22 are operatively supported on tandems 24 which are pivotally connected to the machine between the rear wheels 22 on each side of the motor grader 10. The power source may be, for example, a diesel engine, a gasoline engine, a natural gas engine, or any other engine known in the art. The power source may additionally or alternatively comprise an electrical power source such as an electric motor. The transmission may be a mechanical transmission, hydraulic transmission, or any other transmission type known in the art and may be operable to produce multiple output speed ratios (or a continuously variable speed ratio) between the power source and driven traction devices.

The front frame 12 supports an operator station 26 containing various operator controls, along with a variety of displays or indicators for conveying information to the operator, used for primary operation of the motor grader 10. The front frame 12 also includes a beam 28 that supports the blade assembly 18. The blade assembly 18 includes a drawbar 32 pivotally mounted to a first end 34 of the beam 28 via a ball joint (not shown). The position of the drawbar 32 is controlled by three hydraulic cylinders: a right lift cylinder 36 and left lift cylinder 38 that control vertical movement, and a center shift cylinder 40 that controls horizontal movement.

The right and left lift cylinders 36, 38 are connected to a coupling 70 that includes lift arms 72 pivotally connected to the beam 28 for rotation about axis C. A bottom portion of the coupling 70 has an adjustable length horizontal member 74 that is connected to the center shift cylinder 40. The drawbar 32 includes a large, flat plate, commonly referred to as a yoke plate 42. Beneath the yoke plate 42 is a circular gear arrangement and mount, commonly referred to as the circle 44. The circle 44 is rotated by, for example, a hydraulic motor referred to as the circle drive 46. In other embodiments, an electric motor is used to facilitate rotation of the circle 44.

Whatever the technology used to drive the circle drive 46, rotation of the circle 44 by the circle drive 46 rotates the attached blade 30 about an axis A perpendicular to a plane of the drawbar yoke plate 42. As used herein, the blade cutting angle refers to the angle of the blade 30 relative to a longitudinal axis 48 of the front frame 12. For example, at a zero degree blade cutting angle, the blade 30 is aligned across the machine 10 at a right angle to the longitudinal axis 48 of the front frame 12 and beam 28, as shown in FIG. 2.

A pivot assembly 50 between the blade 30 and the circle 44 allows for tilting of the blade 30 relative to the circle 44. To this end, a blade tip cylinder 52 is used to tilt the blade 30 forward or rearward. In other words, the blade tip cylinder 52 is used to tip or tilt a top edge 54 relative to the bottom cutting edge 56 of the blade 30, and the occurrence or extent of this tilting is commonly referred to as blade “tip.”

As noted above, steering of the motor grader 10 is accomplished through a combination of front wheel steering and machine articulation. As shown in FIG. 2, steerable traction devices (right wheel 58 and left wheel 60 in the illustrated example) are associated with the first end 34 of the beam 28. The right wheel 58 and left wheel 60 may be rotatable and tiltable for use during steering and leveling of a work surface 86. The right wheel 58 and left wheel 60 are connected via a steering apparatus 88 that may include a tie rod 90 for pivoting the wheels in unison about pivot points 80 (FIG. 3) as well as one or more wheel tilt actuators 91 to provide front wheel tilt.

Referring to FIGS. 1 and 3, the motor grader 10 includes an articulation joint 62 that pivotally connects front frame 12 and rear frame 14 at an articulation axis B. Both a right articulation cylinder 64 and a left articulation cylinder 66 are connected between the front frame 12 and the rear frame 14 on opposing sides of the machine 10. The right and left articulation cylinders 64, 66 are used to pivot the front frame 12 relative to the rear frame 14, separated at articulation axis B. In the illustrative example of FIG. 2, the motor grader 10 is positioned in the neutral or zero articulation angle position wherein the longitudinal axis 48 of the front frame 12 is aligned with a longitudinal axis 68 of the rear frame 14.

FIG. 3 provides a top view of the motor grader 10 with the front frame 12 rotated at an articulation angle α (θ_(a) of FIG. 6) defined by the intersection of longitudinal axis 48 of front frame 12 and longitudinal axis 68 of the rear frame 14, the intersection corresponding with the position of articulation joint 62. This illustration follows the convention that a positive a value is indicative of a left articulation from the perspective of an operator facing forward, while a negative a value would be indicative of a right articulation. A front wheel steering angle θ(θ_(f) of FIG. 6) is defined between a longitudinal axis 76 parallel to the longitudinal axis 48 of front frame 12, and a longitudinal axis 78 of the front wheels 58, 60, the angle θ having an origin at the pivot point 80 of the front wheels 58, 60. This is demonstrated in connection with left front wheel 60, but also applies to the right front wheel 58. It will be appreciated that in order for the turn centers of the front wheels 58, 60 to coincide as shown, one may have a slightly different steering angle from the other, with the outside wheel generally having a longer radius.

As can be seen, the motor grader 10 has many degrees of freedom, both in steering and in blade position, that provide the ability to perform precise work; however, these various degrees of freedom must be carefully controlled to provide the best work product and operator experience. As noted above, it can be difficult for an operator to maintain an appropriate blade position and orientation, especially while turning the machine.

Referring to FIG. 4, although other physical implementations are possible, an embodiment of the disclosure employs a controller 94 configured to receive and evaluate machine data, such as steering angle, blade angle, blade shift, blade tilt, machine speed, etc. In addition, the controller 94 may receive and evaluate sensor data. In conjunction with its analysis and processing operations, the controller 94 provides data and/or control outputs as needed to execute the methodology described herein, e.g., setting the slope of the blade 30 to maintain a desired cross slope cut angle.

The controller 94 is implemented, in an embodiment, as a computing device incorporating one or more microcontrollers and/or microprocessors (collectively referred to herein as a “processor” or “digital processor”). The controller 94 operates by reading or loading computer-executable instructions, or code, from a nontransitory computer-readable medium such as a nonvolatile memory, a magnetic or optical disc memory, a flash drive, and so on. The controller 94 may execute the instructions in a time-shared manner, a multi-thread manner, or any other suitable execution technique. It will be appreciated that data used by the controller 94 in the execution of the computer-executable instructions may be stored and read out as well, or may be created in real time. The controller 94 has one or more interfaces to receive data and/or commands, and one or more outputs to output data and/or commands such as those discussed above. The controller 94 may be a stand-alone controller or may be implemented within another controller that serves other additional machine functions.

In the illustrative embodiment shown in FIG. 4, the controller 94 receives a steering angle sensor input signal 96 from one or more steering angle sensors 98. This steering angle sensor input signal 96 provides a signal indicative of the steering angle (e.g., front wheel steering angle θ of FIG. 3).

As used herein, a signal is indicative of a specified quantity or value when it directly or indirectly conveys or can be used to calculate, directly or indirectly, that quantity or value. With respect to all inputs, it will be appreciated that each signal may be communicated over a dedicated physical line or channel, or may be multiplexed over a multi-signal channel, as may be the case in the event that the machine 10 utilizes a managed machine area network. In either case, one or more input signals may be communicated at least partially by wireless transmission.

The controller 94 further receives a mainfall angle input signal 100 from one or more mainfall angle sensors 102, with the mainfall angle input signal 100 being indicative of the machine pitch and roll angles. The mainfall angle sensors 102 may include, for example, a gravitational sensor. In an embodiment, the controller 94 further receives an articulation input signal 104 from one or more articulation sensors 106, with the articulation input signal 104 being indicative of the articulation angle α at the axis B between the rear frame 14 and front frame 12. In a further embodiment, the one or more articulation sensors 106 include a pivot sensor disposed at articulation joint 62 to sense rotation about articulation axis B. Additionally or alternatively, the one or more articulation sensors 106 may include one or more sensors configured to monitor the extension of right and/or left articulation cylinders 64, 66.

In an embodiment, a circle sensor 110 provides a blade rotation input signal 108 to the controller 94, the blade rotation input signal 108 being indicative of the rotation of the blade 30 about a central axis (axis C). Further, a blade slope angle signal 112 received from a blade slope angle sensor 114 provides an indication to the controller 94 of the slope angle of the blade 30 relative to the front frame 12.

It will appreciated that the steering angle sensors 98, articulation sensors 106, circle sensor 110, blade slope angle sensor 114, as well as other sensors for rotational movement may be, for example, potentiometers, extension sensors, proximity sensors, angle sensors, rotary encoders, and the like. Blade position sensors may be configured to sense blade position directly or may be configured to sense blade position indirectly (for example from pin angle sensors, etc.) based on the positions of the related hydraulic actuators.

As noted above, the system is configured to ensure a desired cross slope cut angle. In an embodiment, the desired cut angle is received by the controller 94 via a cut angle command input signal 116 indicative of the desired cut angle. In an embodiment, the angle command input signal 116 originates from an operator interface 118, which may be, for example, an interface device such as a keyboard, touch screen or cursor-driven graphical user interface configured to accept an operator designation (such as by typing) or selection (such as by cursor selection or touch selection from a graphical menu or list) of a desired cut angle.

Before discussing the cross cut angle management process enabled by the controller 94 in greater detail, illustrative outputs of the controller 94 will be briefly identified and discussed. It will be appreciated that any output signal may be provided over a dedicated physical line or channel, or all outputs may be multiplexed over a lesser number of non-dedicated lines or channels. Moreover, one or more outputs may be communicated entirely or partially by wireless transmission.

In order to provide the desired cross slope angle, the controller 94 provides a blade slope output 120 to a blade slope actuator which may be a separate hydraulic or electric actuator or may be implemented via existing actuators such as the lift cylinders 36, 38. As used herein, the term “blade slope actuator” refers to either a dedicated actuator or a use of one or more existing actuators. In an embodiment, the height and shift of the blade 30 may also be controlled by the controller 94, e.g., via a height output 122 to one or both lift cylinders 36, 38, and a shift output 124 to the center shift cylinder 40.

It will be appreciated that in general, the controller 94 does not necessarily provide its output commands directly to the affected actuators. Rather, in a hydraulic system, the output command may be provided to a control solenoid associated with a hydraulic control valve for the actuator in question. In an electric system, the output command may be provided to a driver and/or encoder for generating a power signal to drive the affected actuator.

Before discussing specific process flows executed by the controller 94, a brief overview of the geometric constraints and position parameters of the motor grader blade system will be given. Referring to FIG. 5, a system diagram 150 is shown identifying angular relationships between the blade edge and various system directions. The blade edge 151 of blade 30 is shown having a position and angular orientation in three-dimensional (x, y, z) space. A direction of travel 152 of the blade 30, and in this embodiment the blade center-point, is represented by a vector. While the magnitude of the vector is not of significance, the direction of the vector will be used in further operations to define the blade cross slope cut angle.

The vector corresponding to the direction of travel 152 has a projection 153 onto the horizontal plane 154. It will be appreciated that the direction of travel 152 does not necessarily lie in the x-z plane since the motor grader may be climbing or descending. A vertical plane 155 is defined as lying parallel to gravity and perpendicular to the projection 153. The position and orientation of the blade edge 151 result in a projection 156 of the blade edge 151 onto the vertical plane 155 in the direction of travel. In operation, the angle 157 of the projection 156 with respect to the horizontal plane 154 defines the actual cross cut angle that the blade 30 will impose on the underlying ground, when measured with respect to gravity rather than with respect to the machine direction of travel.

From a control standpoint, the controller 94 executes a control process configured to control the cross slope of the blade relative to the machine front frame 12 so as to impose the desired actual cut angle 157 onto the ground being cut relative to gravity. The inputs used by the controller 94 in the control process include the steering angle, articulation angle, machine pitch and roll angles, rotation of blade, and blade slope angle. The controller 94 then operates to identify the cross slope angle 157 of the blade cutting plane across the machine travel direction. In order to identify this parameter, the controller 94 is configured to first find the machine travel direction and the blade position with respect to the machine frame using a pure pursuit algorithm. For the sake of simplicity, it is assumed that the cross slope measuring point on the blade 30 is located on the center line of the front frame 12.

Referring to the schematic machine drawing of FIG. 6, a turning radius R_(f) of the front frame portion 12 and a turning radius R, of the rear frame portion intersect to identify a rotation point O. The radius Rb from the blade center point C to the rotation point O defines the perpendicular to the blade travel direction. The angle between the blade travel direction and the front frame center line (θ_(bt)) can then be represented as:

$\theta_{bt} = {\arctan \left( \frac{{\left( {L_{2} + {L_{1}{\cos \left( \theta_{a} \right)}}} \right){\sin \left( \theta_{f} \right)}} - {L_{3}{\sin \left( {\theta_{a} + \theta_{f}} \right)}}}{\left( {L_{2} + {L_{1}{\cos \left( \theta_{a} \right)}}} \right){\cos \left( \theta_{f} \right)}} \right)}$

where L₂ is the distance from the center of the rear frame 14 (centered between left and right wheel sets and front and back wheel sets) to the articulation pivot point; L₁ is the distance from the articulation pivot point to the intersection of the axis between the front wheel centers and the longitudinal axis of the front frame 12; θ_(a) is the angle between the front frame 12 and the rear frame 14 (corresponding to the articulation angle α); and θ_(f) is the steering angle, that is, the angle between the front wheels (or the outer wheel when turning) and the front frame 12.

The machine travel direction at the blade center point (v_(travel)) can then be represented as:

$v_{travel} = \begin{bmatrix} {{{\cos \left( \theta_{bt} \right)}{\cos \left( \theta_{p} \right)}} - {{\sin \left( \theta_{bt} \right)}{\sin \left( \theta_{p} \right)}{\sin \left( \theta_{r} \right)}}} \\ {{{\cos \left( \theta_{bt} \right)}{\sin \left( \theta_{p} \right)}} + {{\cos \left( \theta_{p} \right)}{\sin \left( \theta_{bt} \right)}{\sin \left( \theta_{r} \right)}}} \\ {{- {\cos \left( \theta_{r} \right)}}{\sin \left( \theta_{bt} \right)}} \end{bmatrix}$

where θ_(p) is the machine pitch angle and θ_(r) is the machine roll angle.

In parallel, the blade cutting edge direction (v_(blade)) can be represented as:

$v_{blade} = \begin{bmatrix} {{{\cos \left( \theta_{p} \right)}{\sin \left( \theta_{c} \right)}} + {{\cos \left( \theta_{c} \right)}{\sin \left( \theta_{p} \right)}{\sin \left( {\theta_{dr} + \theta_{r}} \right)}}} \\ {{{\sin \left( \theta_{c} \right)}{\sin \left( \theta_{p} \right)}} - {{\cos \left( \theta_{c} \right)}{\cos \left( \theta_{p} \right)}{\sin \left( {\theta_{dr} + \theta_{r}} \right)}}} \\ {{\cos \left( \theta_{c} \right)}{\cos \left( {\theta_{dr} + \theta_{r}} \right)}} \end{bmatrix}$

where θ_(c) is the blade rotation angle and θ_(dr) is defined as follows:

θ_(dr)=−θ_(r)+arcsin(sec(θ_(c))sec(θ_(p))(sin(θ_(bcs))+sin(θ_(c))sin(θ_(p))))

wherein, further, θ_(bcs) is the blade cross slope angle.

With these values defined, normal direction of the plane defined by the travel direction and the blade cutting edge is

$n_{c} = \frac{\begin{bmatrix} {{{\cos \left( \theta_{c} \right)}{\cos \left( \theta_{p} \right)}{\sin \left( \theta_{bt} \right)}{\sin \left( \theta_{dr} \right)}} - {\left( \left( {{{\cos \left( \theta_{bt} \right)}{\cos \left( \theta_{c} \right)}{\cos \left( {\theta_{dr} + \theta_{r}} \right)}} + {{\cos \left( \theta_{r} \right)}{\sin \left( \theta_{bt} \right)}{\sin \left( \theta_{c} \right)}}} \right) \right){\sin \left( \theta_{p} \right)}}} \\ {{{\cos \left( \theta_{bt} \right)}{\cos \left( \theta_{c} \right)}{\cos \left( \theta_{p} \right)}{\cos \left( {\theta_{dr} + \theta_{r}} \right)}} + {{\sin \left( \theta_{bt} \right)}\left( {{{\cos \left( \theta_{p} \right)}{\cos \left( \theta_{r} \right)}{\sin \left( \theta_{c} \right)}} + {{\cos \left( \theta_{c} \right)}{\sin \left( \theta_{dr} \right)}{\sin \left( \theta_{p} \right)}}} \right)}} \\ {{{\sin \left( \theta_{bt} \right)}{\sin \left( \theta_{c} \right)}{\sin \left( \theta_{r} \right)}} + {{\cos \left( \theta_{bt} \right)}{\cos \left( \theta_{c} \right)}{\sin \left( {\theta_{dr} + \theta_{r}} \right)}}} \end{bmatrix}}{\sqrt{{\sin \left( \theta_{bt} \right)}^{2} + {{\cos \left( \theta_{c} \right)}\left( {{{\cos \left( \theta_{c} \right)}\left( {{\cos \left( \theta_{bt} \right)}^{2} - {{\cos \left( \theta_{dr} \right)}^{2}{\sin \left( \theta_{bt} \right)}^{2}}} \right)} + {{\cos \left( \theta_{dr} \right)}{\sin \left( {2\theta_{bt}} \right)}{\sin \left( \theta_{c} \right)}}} \right)}}}$

Blade cross slope angle across the travel direction can then be formulated as:

$\begin{matrix} {\theta_{crossSlope} = {- {\arctan \left( {{n_{c}(3)}/{n_{c}(2)}} \right)}}} \\ {= {- {\arctan \left( \frac{{{\sin \left( \theta_{bt} \right)}{\sin \left( \theta_{c} \right)}{\sin \left( \theta_{r} \right)}} + {{\cos \left( \theta_{bt} \right)}{\cos \left( \theta_{c} \right)}{\sin \left( {\theta_{dr} + \theta_{r}} \right)}}}{{{\cos \left( \theta_{bt} \right)}{\cos \left( \theta_{c} \right)}{\cos \left( \theta_{p} \right)}{\cos \left( {\theta_{dr} + \theta_{r}} \right)}} + {{\sin \left( \theta_{bt} \right)}\left( {{\cos \left( \theta_{p} \right)}{\cos \left( \theta_{r} \right)}{\sin \left( \theta_{c} \right)}{\sin \left( \theta_{dr} \right)}{\sin \left( \theta_{p} \right)}} \right)}} \right)}}} \end{matrix}$

This equation thus specifies the relationship between the blade slope angle and the cross slope cut angle with compensation for grader attitude and articulation.

INDUSTRIAL APPLICABILITY

In general terms, the present disclosure sets forth an economical, robust and accurate system and method for ensuring that a cross slope cut angle created by a motor grader matches a desired cross cut angle. The system utilizes existing machine sensors to implement a pure pursuit process that links the cross slope cut angle to a desired cross cut angle.

FIG. 7 shows an illustrative process utilized by the controller 94 in an embodiment to control blade slope angle to create a given cross slope angle under various machine conditions. While the disclosure exemplifies this process as being executed by the controller 94, it will be appreciated that the process may be distributed as needed or desired in a given implementation. Moreover, it will be appreciated that the order of steps within the process is illustrative, and the steps need not occur in the given order unless otherwise specified in the claims or apparent from the disclosure.

Referring now to FIG. 7, the process 160 starts at stage 161 wherein the controller 94 reads the steering angle sensor input signal 96, mainfall angle input signals (pitch and roll angle) 100, articulation input signal 104, blade rotation input signal 108, blade slope angle signal 112 and angle command input signal 116. It will be appreciated that the data exchange relationship between the controller 94 and the various sensors may be a push relationship, wherein the sensors push their data to the controller 94, or a pull relationship wherein the controller periodically requests the data from the sensors.

At stage 162, the controller 94 calculates the angle θ_(bt) between the blade travel direction and the front frame center line based on the distance from the center of the rear frame to the articulation pivot point, the distance from the articulation pivot point to the intersection of the axis between the front wheel centers and the longitudinal axis of the front frame 12, the angle between the front frame 12 and the rear frame 14, and the steering angle.

Given the angle θ_(bt) between the blade travel direction and the front frame center line, the controller in stage 163 calculates the machine travel direction at the blade center point (v_(travel)) based on the angle θ_(bt) between the blade travel direction and the front frame center line, the machine pitch angle θ_(p) and the machine roll angle θ_(r).

At stage 164, the controller 94 calculates the blade cutting edge direction (v_(blade)) based on the blade rotation angle θ_(c) and the blade cross slope angle θ_(bcs). With these values defined, the normal direction of the plane formed by the travel direction and the blade cutting edge, n_(c), is calculated in stage 165. Finally at stage 166, the controller 94 calculates the blade cross slope angle across the travel direction based on the previously calculated quantities. As a function of the input desired cut angle, the blade cross slope angle provides the blade slope angle needed under present motor grader attitude and articulation conditions in order for the motor grader to produce a graded surface having the desired slope angle.

At stage 167, the controller 94 outputs the calculated blade cross slope angle to one or more blade slope actuators as discussed above. This output may comprise a signal adapted to a particular actuator type, e.g., electric or hydraulic, or may be an angle value to be further processed to produce a signal adapted to the particular actuator type.

In an optional embodiment, the controller 94 is also configured to output adjustment signals to one or more other actuators, e.g., blade lift or rotation actuators. This may be needed, for example, in the event that the present range of motion of the blade slope actuators is not sufficient to reach the value specified by the controller 94.

It will be appreciated that the present disclosure provides an effective and efficient control system and method for motor grader blade control. The described system and method generally decrease operator fatigue and increase grading accuracy by adjusting the blade slope to yield a desired cross cut slope after accounting for machine position and orientation variables.

While only certain examples of the described system and method have been set forth, alternatives and modifications will be apparent from the above description to those skilled in the art. These and other alternatives are considered equivalents and within the spirit and scope of this disclosure and the appended claims. 

What is claimed is:
 1. A method for controlling a blade of a motor grader to provide a desired cross slope cut angle, the motor grader including a frame having a front frame portion and a rear frame portion, the blade, wherein the blade has an edge and a center point, one or more blade slope actuators, and a plurality of machine sensors, the method comprising: receiving a signal indicative of the desired cross slope cut angle; receiving one or more sensor signals from the plurality of sensors; executing a pure pursuit procedure to identify a blade slope to yield the desired cross slope cut angle based on the one or more sensor signals, the pure pursuit procedure comprising: identifying a direction of travel of the blade based on at least one of the sensor signals, the direction of travel of the blade having a horizontal component, and identifying an angle between the horizontal component and the front frame portion; identifying a machine travel direction at the blade center point; generating a projection of the blade edge onto a plane perpendicular to the horizontal component of the direction of travel of the blade; and based on the projection of the blade edge onto the perpendicular plane, generating a slope function specifying the cross slope cut angle as a function of blade cross slope angle.
 2. The method for controlling a blade of a motor grader in accordance with claim 1, further comprising outputting a blade slope command to the one or more blade slope actuators, the blade slope command representing a blade slope angle that will yield the desired cross slope cut angle in keeping with the slope function.
 3. The method for controlling a blade of a motor grader in accordance with claim 1, wherein the plurality of sensors include a blade slope sensor for sensing the slope of the blade relative to the front frame portion and a blade rotation sensor for sensing a rotation of the blade relative to the front frame portion.
 4. The method for controlling a blade of a motor grader in accordance with claim 3, wherein the plurality of sensors include a mainfall sensor for sensing a pitch angle of the motor grader and a roll angle of the motor grader.
 5. The method for controlling a blade of a motor grader in accordance with claim 4, wherein the plurality of sensors further include a steering sensor for sensing a steering angle of the motor grader and an articulation sensor for sensing an articulation angle between the front frame portion and the rear frame portion.
 6. The method for controlling a blade of a motor grader in accordance with claim 5, wherein the articulation angle is non-zero.
 7. The method for controlling a blade of a motor grader in accordance with claim 1, wherein the signal indicative of the desired cross slope cut angle is generated based on an operator command.
 8. A motor grader having improved cross slope cut angle control, the motor grader comprising: a frame having a front frame portion and a rear frame portion, a blade movably attached to the front frame portion, wherein the blade has an edge and a center point; one or more blade slope actuators to adjust the cross slope angle of the blade; a plurality of machine sensors; and a controller configured to adjust the cross slope angle of the blade, so that the cross slope cut angle corresponds to a desired cross slope cut angle, by receiving a signal indicative of the desired cross slope cut angle, receiving one or more sensor signals from the plurality of sensors, and executing a pure pursuit procedure to identify a blade cross slope angle to yield the desired cross slope cut angle based on the one or more sensor signals, the pure pursuit procedure comprising: identifying a direction of the blade cutting edge based on at least one of the sensor signals; identifying a machine travel direction at the blade center point; generating a normal direction of the plane formed by the blade cutting edge and the travel direction; and based on the normal direction of the plane formed by the blade cutting edge and the travel direction, generating a slope function specifying the cross slope cut angle as a function of blade cross slope angle.
 9. The motor grader in accordance with claim 8, wherein the controller is further configured to output a blade slope command to the one or more blade slope actuators, the blade slope command representing a blade slope angle that will yield the desired cross slope cut angle in keeping with the slope function.
 10. The motor grader in accordance with claim 8, wherein the plurality of sensors include a blade slope sensor for sensing the slope of the blade relative to the front frame portion and a blade rotation sensor for sensing a rotation of the blade relative to the front frame portion.
 11. The motor grader in accordance with claim 10, wherein the plurality of sensors include a mainfall sensor for sensing a pitch angle of the motor grader and a roll angle of the motor grader.
 12. The motor grader in accordance with claim 11, wherein the plurality of sensors further include a steering sensor for sensing a steering angle of the motor grader and an articulation sensor for sensing an articulation angle between the front frame portion and the rear frame portion.
 13. The motor grader in accordance with claim 8, wherein the controller is further configured to generate the signal indicative of the desired cross slope cut angle based on receipt of an operator command.
 14. A method for controlling a blade of a motor grader to provide a desired cross slope cut angle via one or more blade slope actuators the method comprising: measuring a blade cross slope angle; generating a blade travel vector representing a direction of travel of the blade; projecting the blade travel vector onto a horizontal surface to define a blade travel projection, and generating a plane perpendicular to the blade travel projection; projecting a cutting edge of the blade onto the plane perpendicular to the projection to generate a cut projection as a function of blade cross slope angle; and adjusting a cross slope angle of the blade such that an angle of the cut projection matches the desired cross slope cut angle.
 15. The method for controlling a blade of a motor grader in accordance with claim 14, wherein measuring the blade cross slope angle includes receiving a slope signal from a blade slope sensor.
 16. The method for controlling a blade of a motor grader in accordance with claim 14, wherein generating a blade travel vector representing a direction of travel of the blade includes sensing a pitch angle and roll angle of the motor grader and sensing a steering angle and articulation angle of the motor grader.
 17. The method for controlling a blade of a motor grader in accordance with claim 16, wherein sensing a pitch angle and roll angle of the motor grader includes receiving a signal from a mainfall sensor.
 18. The method for controlling a blade of a motor grader in accordance with claim 17, wherein the mainfall sensor is a gravitational sensor.
 19. The method for controlling a blade of a motor grader in accordance with claim 17, wherein the mainfall sensor is a gyroscopic sensor.
 20. The method for controlling a blade of a motor grader in accordance with claim 14, wherein adjusting a cross slope angle of the blade such that an angle of the cut projection matches the desired cross slope cut angle includes sending a slope command to one or more blade slope actuators. 